Model-free adaptive control of advanced power plants

ABSTRACT

A novel 3-Input-3 -Output (3×3) Model-Free Adaptive (MFA) controller with a set of artificial neural networks as part of the controller is introduced. A 3×3 MFA control system using the inventive 3×3 MFA controller is described to control key process variables including Power, Steam Throttle Pressure, and Steam Temperature of boiler-turbine-generator (BTG) units in conventional and advanced power plants. Those advanced power plants may comprise Once-Through Supercritical (OTSC) Boilers, Circulating Fluidized-Bed (CFB) Boilers, and Once-Through Supercritical Circulating Fluidized-Bed (OTSC CFB) Boilers.

This application claims priority to U.S. Provisional Application No. 61/473,308 filed on Apr. 8, 2011, which is herein incorporated by reference.

This invention was made with government support under SBIR grant DE-FG02-06ER84599 awarded by the U.S. Department of Energy. The government has certain rights to the invention.

INVENTION

The subject of this patent relates to automatic control of power plants, and more particularly to a method and apparatus for intelligently controlling the boiler-turbine-generator (BTG) units of power plants.

For the U.S. to reach its future energy objectives, visions to build ultra-clean and highly efficient energy plants of the future have to be realized. In parallel with the development of sensors, more robust and flexible process control technologies must be developed to build an intelligent control system that can yield a fully automated operation and be adaptive to changing process needs and fuel availability. It must be safe, reliable, and easy to install, maintain, and operate. The intelligent control system is aimed to control conventional boilers as well as advanced boilers including Once-through Supercritical Boilers, Circulating Fluidized-bed (CFB) Boilers, and Supercritical CFB Boilers in future energy plants that can deliver maximum-energy-efficiency, near-zero-emissions, fuel-flexibility, and multi-products.

First introduced in 1997, the Model-Free Adaptive (MFA) control technology overcomes the shortcomings of traditional Proportional-Integral-Derivative (PID) controllers and is able to control various complex processes that may have one or more of the following behaviors: (1) nonlinear, (2) time-varying, (3) large time delay, (4) multi-input-multi-output, (5) frequent dynamic changes, (6) open-loop oscillating, (7) pH process, and (8) processes with large load changes and disturbances.

Since MFA is “Model-Free”, it also overcomes the shortcomings of model-based advanced control methods. MFA is an adaptive and robust control technology but it does not require (1) precise process models, (2) process identification, (3) controller design, and (4) complicated manual tuning of controller parameters. A series of U.S. patents and related international patents for Model-Free Adaptive (MFA) control and optimization technologies have been issued. Some of them are listed in Table 1.

TABLE 1 U.S. Pat. No. Patent Name 6,055,524 Model-Free Adaptive Process Control 6,556,980 Model-Free Adaptive Control for Industrial Processes 6,360,131 Model-Free Adaptive Control for Flexible Production Systems 6,684,115 Model-Free Adaptive Control of Quality Variables (1) 6,684,112 Robust Model-Free Adaptive Control 7,016,743 Model-Free Adaptive Control of Quality Variables (2) 7,142,626 Apparatus and Method of Controlling Multi-Input-Single- Output Systems 7,152,052 Apparatus and Method of Controlling Single-Input-Multi- Output Systems 7,415,446 Model-Free Adaptive Optimization

Commercial hardware and software products with Model-Free Adaptive control have been successfully installed in most industries and deployed on a large scale for process control, building control, and equipment control.

In this patent, we introduce a novel 3-Input-3-Output (3×3) Model-Free Adaptive (MFA) controller, which enhances the capabilities of the MIMO MFA controllers described in U.S. Pat. Nos. 6,055,524 and 6,556,980. We will also describe a 3×3 MFA control system using the inventive 3×3 MFA controller to control key process variables including Power, Steam Throttle Pressure, and Steam Temperature of boiler-turbine-generator (BTG) units in conventional and advanced power plants.

In the accompanying drawing:

FIG. 1 is a block diagram illustrating a single variable Model-Free Adaptive (MFA) control system.

FIG. 2 is a block diagram illustrating the architecture of a single-input-single-output (SISO) Model-Free Adaptive (MFA) controller in its basic form.

FIG. 3 is a block diagram illustrating a 3-Input-3-Output (3×3) multivariable Model-Free Adaptive (MFA) control system according to this invention.

FIG. 4 is a schematic representation of a boiler-turbine-generator (BTG) unit of a power plant comprising a conventional boiler.

FIG. 5 is a schematic representation of a boiler-turbine-generator (BTG) unit of a power plant comprising a supercritical circulating fluidized-bed boiler.

FIG. 6 is a diagram illustrating the key process variables of the boiler-turbine-generator (BTG) unit of a power plant.

FIG. 7 illustrates the block diagram of a 3×3 MFA control system for controlling the 3×3 Power-Pressure-Temperature (PPT) process of a Boiler-Turbine-Generator (BTG) unit according to this invention.

FIG. 8 is a time-amplitude diagram comparing the control performance of a 3×3 MFA control system versus a PID control system for controlling two identical PPT processes of a BTG unit, where the setpoint for Power is stepped down.

FIG. 9 is a time-amplitude diagram comparing the control performance of a 3×3 MFA control system versus a PID control system for controlling two identical PPT processes of a BTG unit, where the setpoint for Steam Throttle Pressure is stepped down.

FIG. 10 is a time-amplitude diagram comparing the control performance of a 3×3 MFA control system versus a PID control system for controlling two identical PPT processes of a BTG unit, where the setpoint for Steam Temperature is stepped down.

FIG. 11 is a time-amplitude diagram comparing the control performance of a 3×3 MFA control system versus a PID control system for controlling two identical PPT processes of a BTG unit, where the setpoints for Power, Throttle Pressure, and Steam Temperature all have step changes.

In this patent, the term “mechanism” is used to represent hardware, software, or any combination thereof The term “process” is used to represent a physical system or process with inputs and outputs that have dynamic relationships.

Without losing generality, all numerical values given in controller parameters in this patent are examples. Other values can be used without departing from the spirit or scope of our invention.

DESCRIPTION A. Single-Variable MFA Control System

FIG. 1 illustrates a single variable Model-Free Adaptive (MFA) control system as described in the U.S. Pat. No. 6,556,980 B1 comprising a single-input-single-output (SISO) MFA controller 10, a SISO process 12, and signal adders, 14, 16. The signals shown in FIG. 1 are as follows:

r(t)—Setpoint (SP)

y(t)—Measured Process Variable (PV), y(t)=x(t)+d(t).

x(t)—Process Output

u(t)—Controller Output (OP)

d(t)—Disturbance, the disturbance caused by noise or load changes.

e(t)—Error between the Setpoint and Measured Variable, e(t)=r(t)−y(t).

The control objective for the controller is to produce an output u(t) to force the process variable y(t) to track the given trajectory of its setpoint r(t) under variations of setpoint, disturbances, and process dynamics. In other words, the task of the MFA controller is to minimize the error e(t) in an online fashion. We select the objective function for the MFA control system as

$\begin{matrix} \begin{matrix} {{E_{S}(t)} = {\frac{1}{2}{e(t)}^{2}}} \\ {= {{\frac{1}{2}\left\lbrack {{r(t)} - {y(t)}} \right\rbrack}^{2}.}} \end{matrix} & (1) \end{matrix}$

The minimization of e(t) is achieved by (i) the regulatory control capability of the MFA controller, and (ii) the adjustment of the MFA's weighting factors allowing the controller to deal with process dynamic changes, disturbances, and other uncertainties.

FIG. 2 illustrates the core architecture of a SISO MFA controller in its basic form as described in the U.S. Pat. No. 6,556,980 B1. Used as a key component, a multilayer perceptron neural network consists of one input layer 20, one hidden layer 22 with N neurons, and one output layer 24 with one neuron. The input signal e(t) to the input layer 20 is firstly converted to a normalized error signal E₁ with a range of −1 to 1 by using the normalization unit 26, where N(.) denotes a normalization function. The output of the normalization unit 26 is then scaled by a scaling function L(.) 25:

$\begin{matrix} {{L\text{(·)}} = {\frac{K_{c}}{T_{c}}.}} & (2) \end{matrix}$

The value of E₁ at time t is computed with function L(.) and N(.):

$\begin{matrix} {{E_{1} = {\frac{K_{c}}{T_{c}}{N\left( {e(t)} \right)}}},} & (3) \end{matrix}$

where K_(c)>0 is defined as controller gain and T_(c) is the user selected process time constant. These are important parameters for the MFA controller since K_(c) is used to compensate for the process steady-state gain and T_(c) provides information for the dynamic behavior of the process. When the error signal is scaled with these parameters, the controller's behavior can be manipulated by adjusting the parameters.

The use of T_(c) as part of the scaling function permits a broad choice of sample intervals, T_(s), because the only restriction is that T_(s) must conform to the formula T_(s)<T_(c)/3 based on the principles of information theory.

The E₁ signal then goes iteratively through a series of delay units 28, where z⁻¹ denotes the unit delay operator. A set of normalized and scaled error signals E₂ to E_(N) is then generated. In this way, a continuous signal e(t) is converted to a series of discrete signals, which are used as the inputs to the neural network. These delayed error signals E_(i), i=1, . . . N, are then conveyed to the hidden layer through the neural network connections. This is equivalent to adding a feedback structure to the neural network. Then the regular static multilayer neural network becomes a dynamic neural network, which is a key component for the Model-Free Adaptive controller.

Each input signal is conveyed separately to each of the neurons in the hidden layer 22 via a path weighted by an individual weighting factor w_(ij), where i=1, 2, . . . N, and j=1, 2, . . . N. The inputs to each of the neurons in the hidden layer are summed by adder 30 to produce signal p_(j). Then the signal p_(j) is filtered by an activation function 32 to produce q_(j), where j denotes the jth neuron in the hidden layer.

A piecewise continuous linear function f(x) mapping real numbers to [0,1] is used as the activation function in the neural network as defined by

$\begin{matrix} {{{f(x)} = 0},{{{if}\mspace{14mu} x} < {- \frac{b}{a}}}} & \left( {4a} \right) \\ {{{f(x)} = {{ax} + b}},{{{if}\mspace{14mu} - \frac{b}{a}} \leq x \leq \frac{b}{a}}} & \left( {4b} \right) \\ {{{f(x)} = 1},{{{if}\mspace{14mu} x} > \frac{b}{a}}} & \left( {4c} \right) \end{matrix}$

where a is an arbitrary constant and b=½.

Each output signal from the hidden layer is conveyed to the single neuron in the output layer 24 via a path weighted by an individual weighting factor h_(j), where j=1, 2, . . . N. These signals are summed in adder 34 to produce signal z(.), and then filtered by activation function 36 to produce the output o(.) of the neural network 18 with a range of 0 to 1.

A de-normalization function 38 defined by

D(x)=100x,   (5)

maps the o(.) signal back into the real space to produce the controller signal u(t).

The algorithm governing the input-output of the controller consists of the following difference equations:

$\begin{matrix} {{{p_{j}(n)} = {\sum\limits_{i = 1}^{N}{{w_{ij}(n)}{E_{i}(n)}}}},} & (6) \\ {{{q_{j}(n)} = {f\left( {p_{j}(n)} \right)}},} & (7) \\ \begin{matrix} {{{o(n)} = {f\left( {\sum\limits_{j = 1}^{N}{{h_{j}(n)}{q_{j\;}(n)}}} \right)}},} \\ {{= {{a{\sum\limits_{j = 1}^{N}{{h_{j}(n)}{q_{j}(n)}}}} + b}},} \end{matrix} & (8) \end{matrix}$

where the variables of function f(.) are in the range specified in Equation (4b) and bounded by the limits specified in Equations (4a) and (4c). The controller signal u(t) becomes

$\begin{matrix} \begin{matrix} {{u(t)} = {{{K_{c}\left( . \right)}{e(t)}} + {D\left( {o(t)} \right)}}} \\ {{= {{{K_{c}\left( . \right)}{e(t)}} + {100\left\lbrack {{a{\sum\limits_{j = 1}^{N}{{h_{j}(n)}{q_{j}(n)}}}} + b} \right\rbrack}}},} \end{matrix} & (9) \end{matrix}$

where n denotes the nth iteration; o(t) is the continuous function of o(n); D(.) is the de-normalization function; and K_(c)(.)>0, the controller gain 42, is a parameter used to adjust the magnitude of the control output. This is the same K_(c) used in the scaling function L(.) 25. It is useful to adjust the controller performance.

An online learning algorithm as described in the U.S. Pat. No. 6,556,980 B1 is an example of one algorithm that can be used to continuously update the values of the weighting factors of the MFA controller as follows:

Δw _(ij)(n)=a ² ηe(n)E _(i)(n)h _(j)(n),   (10)

Δh _(j)(n)=aηe(n)q _(j)(n).   (11)

The equations (1) through (11) work for both process direct-acting or reverse acting types. Direct-acting means that an increase in the process input will cause its output to increase, and vice versa. Reverse-acting means that an increase in the process input will cause its output to decrease, and vice versa. To keep the above equations working for both direct and reverse acting cases, e(t) is calculated differently based on the acting type of the process as follows:

e(t) = r(t) − y(t), if direct acting (12a) e(t) = −[r(t) − y(t)]. if reverse acting (12b)

This is a general treatment for the process acting types. It applies to all MFA controllers to be introduced below.

The algorithm for updating the weighting factors is based on the goal of minimizing the error e(t). Since this effort is the same as the control objective, the adaptation of the weighting factors can assist the controller to minimize the error while process dynamics are changing. In addition, the neural network based MFA controller “remembers” a portion of the process data providing valuable information for the process dynamics. In comparison, a digital version of the Proportional-Integral-Derivative (PID) controller remembers only the current and previous two samples. In this regard, PID has almost no memory, and MFA possesses the memory that is essential to an “intelligent” controller.

B. 3-Input-3-Output MFA Control System

FIG. 3 is a block diagram illustrating a 3-Input-3-Output (3×3) multivariable Model-Free Adaptive (MFA) control system according to this invention. In the 3×3 MFA control system, the 3×3 MFA controller 52 consists of three main controllers C₁₁, C₂₂, C₃₃, and six compensators C₂₁, C₃₁, C₁₂, C₃₂, C₁₃, C₂₃. The 3×3 process 54 has three main processes G₁₁, G₂₂, G₃₃, and six sub-processes G₂₁, G₃₁, G₁₂, G₃₂, G₁₃, G₂₃. The measured process variables y₁, y₂, and y₃ are used as the feedback signals for each of the main control loops, respectively. They are compared with the setpoints r₁, r₂, and r₃ at adders 56 to produce errors e₁, e₂, and e₃. The output of each main controller associated with one of the inputs e₁, e₂, or e₃ is combined with the output of the compensators associated with the other two inputs by adders 58 to produce control signals u₁, u₂, and u₃.

In the 3×3 MFA control system, the signals shown in FIG. 3 are as follows:

r₁(t), r₂(t), r₃(t)—Setpoint (SP) of controllers C₁₁, C₂₂ and C₃₃, respectively.

y₁(t), y₂(t), y₃(t)—Measured Process Variables (PV) of the 3×3 process.

e₁(t), e₂(t), e₃(t)—Error between the Setpoint and its corresponding Process Variable (PV).

u₁(t), u₂(t), u₃(t)—Outputs of the 3×3 controller used as inputs to the 3×3 process.

d₁(t), d₂(t), d₃(t)—Disturbance to y₁, y₂ and y₃, respectively.

v₁₁(t), v₂₂(t), v₃₃(t)—Output of the main controllers C₁₁, C₂₂ and C₃₃, respectively.

v₂₁(t), v₃₁(t) v₁₂(t), v₃₂(t) v₁₃(t), v₂₃(t)—Output of compensators C₂₁, C₃₁, C₁₂, C₃₂, C₁₃, and C₂₃, respectively.

x₁₁(t), x₂₁(t), x₃₁(t), x₁₂(t), x₂₂(t), x₃₂(t), x₁₃(t), x₂₃(t), x₃₃(t)—Output of processes G₁₁, G₂₁, G₃₁, G₁₂, G₂₂, G₃₂, G₁₃, G₂₃, and G₃₃, respectively.

The process variable (PV) for each main control loop is affected by the process output of 3 sub-processes and a disturbance signal as follows:

y ₁(t)=x ₁₁(t)+x ₁₂(t)+x ₁₃(t)+d₁(t),   (13a)

y ₂(t)=x ₂₁(t)+x ₂₂(t)+x ₂₃(t)+d ₂(t),   (13b)

y ₃(t)=x ₃₁(t)+x ₃₂(t)+x ₃₃(t)+d ₃(t).   (13c)

For each main control loop, the error between the Setpoint and its corresponding Process Variable (PV) is calculated based on the acting type of the corresponding process as follows:

e₁(t) = r₁(t) − y₁(t), if G₁₁ is direct acting (14a) e₁(t) = −[r₁(t) − y₁(t)], if G₁₁ is reverse acting (14b) e₂(t) = r₂(t) − y₂(t), if G₂₂ is direct acting (14c) e₂(t) = −[r₂(t) − y₂(t)], if G₂₂ is reverse acting (14d) e₃(t) = r₃(t) − y₃(t), if G₃₃ is direct acting (14e) e₃(t) = −[r₃(t) − y₃(t)], if G₃₃ is reverse acting. (14f) Please note that a process is said to be direct acting, if the process input increases, the process output increases, and vice versa. A process is said to be reverse acting, if the process input increases, the process output decreases, and vice versa.

For each main control loop, the controller output is a combination of the output from the controller and its corresponding compensators as follows:

u ₁(t)=v ₁₁(t)+v ₁₂(t)+v ₁₃(t),   (15a)

u ₂(t)=v ₂₁(t)+v ₂₂(t)+v ₂₃(t),   (15b)

u ₃(t)=v ₃₁(t)+v ₃₂(t)+v ₃₃(t).   (15c)

For each controller C₁₁, C₂₂, and C₃₃, the value of E₁ at time t is computed with a normalization function N(.) as follows:

$\begin{matrix} {{{E_{1}^{11}(n)} = {\frac{K_{c}^{11}}{T_{c}^{11}}{N\left( {e_{1}(t)} \right)}}},} & \left( {16a} \right) \\ {{{E_{1}^{22}(n)} = {\frac{K_{c}^{22}}{T_{c}^{22}}{N\left( {e_{2}(t)} \right)}}},} & \left( {16b} \right) \\ {{{E_{1}^{33}(n)} = {\frac{K_{c}^{33}}{T_{c}^{33}}{N\left( {e_{3}(t)} \right)}}},} & \left( {16c} \right) \end{matrix}$

Where K_(c) ¹¹>0, K_(c) ²²>0, and K_(c) ³³>0 are the controller gain and T_(c) ¹¹>0, T_(c) ²²>0, and T_(c) ³³>0 are the time constants for C₁₁, C₂₂, and C₃₃, respectively.

The algorithm governing the input-output of the 3×3 MFA controller 52 as well as the online learning algorithm of the neural network consist of the following difference equations:

For Controller C₁₁:

$\begin{matrix} {{{p_{j}^{11}(n)} = {\sum\limits_{i = 1}^{N}{{w_{ij}^{11}(n)}{E_{i}^{11}(n)}}}},} & \left( {17a} \right) \\ {{{q_{j}^{11}(n)} = {{{ap}_{j}^{11}(n)} + b}},} & \left( {17b} \right) \\ {{{v_{11}(n)} = {{K_{c}^{11}{e_{1}(n)}} + {100\left\lbrack {{a{\sum\limits_{j = 1}^{N}{{h_{j}^{11}(n)}{q_{j}^{11}(n)}}}} + b} \right\rbrack}}},} & \left( {17c} \right) \\ {{{\Delta \; {w_{ij}^{11}(n)}} = {a^{2}\eta^{11}{e_{1}(n)}{E_{i}^{11}(n)}{h_{j}^{11}(n)}}},} & \left( {17d} \right) \\ {{{\Delta \; {h_{j}^{11}(n)}} = {a\; \eta^{11}{e_{1}(n)}{q_{j}^{11}(n)}}},} & \left( {17e} \right) \end{matrix}$

For Controller C₂₂

$\begin{matrix} {{{p_{j}^{22}(n)} = {\sum\limits_{i = 1}^{N}{{w_{ij}^{22}(n)}{E_{i}^{22}(n)}}}},} & \left( {18a} \right) \\ {{{q_{j}^{22}(n)} = {{{ap}_{j}^{22}(n)} + b}},} & \left( {18b} \right) \\ {{{v_{22}(n)} = {{K_{c}^{22}{e_{2}(n)}} + {100\left\lbrack {{a{\sum\limits_{j = 1}^{N}{{h_{j}^{22}(n)}{q_{j}^{22}(n)}}}} + b} \right\rbrack}}},} & \left( {18c} \right) \\ {{{\Delta \; {w_{ij}^{22}(n)}} = {a^{2}\eta^{22}{e_{2}(n)}{E_{i}^{22}(n)}{h_{j}^{22}(n)}}},} & \left( {18d} \right) \\ {{\Delta \; {h_{j}^{22}(n)}} = {a\; \eta^{22}{e_{2}(n)}{{q_{j}^{22}(n)}.}}} & \left( {18e} \right) \end{matrix}$

For Controller C₃₃

$\begin{matrix} {{{p_{j}^{33}(n)} = {\sum\limits_{i = 1}^{N}{{w_{ij}^{33}(n)}{E_{i}^{33}(n)}}}},} & \left( {19a} \right) \\ {{{q_{j}^{33}(n)} = {{{ap}_{j}^{33}(n)} + b}},} & \left( {19b} \right) \\ {{{v_{33}(n)} = {{K_{c}^{33}{e_{2}(n)}} + {100\left\lbrack {{a{\sum\limits_{j = 1}^{N}{{h_{j}^{33}(n)}{q_{j}^{33}(n)}}}} + b} \right\rbrack}}},} & \left( {19c} \right) \\ {{{\Delta \; {w_{ij}^{33}(n)}} = {a^{2}\eta^{33}{e_{2}(n)}{E_{i}^{33}(n)}{h_{j}^{33}(n)}}},} & \left( {19d} \right) \\ {{\Delta \; {h_{j}^{33}(n)}} = {a\; \eta^{33}{e_{2}(n)}{{q_{j}^{33}(n)}.}}} & \left( {19e} \right) \end{matrix}$

In these equations, n denotes the nth iteration; a is an arbitrary constant and b=½; η¹¹>0, η²²>0, and η³³>0 are the learning rate for C₁₁, C₂₂, and C₃₃, respectively; K_(c) ¹¹>0, K_(c) ²²>0, and K_(c) ³³>0 are the controller gain for C₁₁, C₂₂, and C₃₃, respectively; and E_(i) ¹¹(n), E_(i) ²²(n), and E_(i) ³³(n) are the delayed signals of E₁ ¹¹(n), E₁ ²²(n), and E₁ ³³(n), respectively. In addition, the a and b constants in Equations (1 7b), (17c), (1 8b), (1 8c), (19b), and (19c) are in the range specified in Equation (4b), and bounded by the limits specified in Equations (4a) and (4c).

The compensators C₂₁, C₃₁, C₁₂, C₃₂, C₁₃, and C₂₃ are designed to include a first-order dynamic block based on the following Laplace transfer functions:

$\begin{matrix} {{C_{21}(S)} = {\frac{V_{21}(S)}{V_{11}(S)} = {\frac{K_{s}^{21}K_{c}^{21}}{{T_{c}^{21}S} + 1}.}}} & \left( {20a} \right) \\ {{C_{31}(S)} = {\frac{V_{31}(S)}{V_{11}(S)} = {\frac{K_{s}^{31}K_{c}^{31}}{{T_{c}^{31}S} + 1}.}}} & \left( {20b} \right) \\ {{C_{12}(S)} = {\frac{V_{12}(S)}{V_{22}(S)} = {\frac{K_{s}^{12}K_{c}^{12}}{{T_{c}^{12}S} + 1}.}}} & \left( {20c} \right) \\ {{C_{32}(S)} = {\frac{V_{32}(S)}{V_{22}(S)} = {\frac{K_{s}^{32}K_{c}^{32}}{{T_{c}^{32}S} + 1}.}}} & \left( {20d} \right) \\ {{C_{13}(S)} = {\frac{V_{13}(S)}{V_{33}(S)} = {\frac{K_{s}^{13}K_{c}^{13}}{{T_{c}^{13}S} + 1}.}}} & \left( {20e} \right) \\ {{C_{23}(S)} = {\frac{V_{23}(S)}{V_{33}(S)} = {\frac{K_{s}^{23}K_{c}^{23}}{{T_{c}^{23}S} + 1}.}}} & \left( {20f} \right) \end{matrix}$

In these equations, S is the Laplace transform operator; V₁₁(S), V₂₂(S), V₃₃(S), V₂₁(S), V₃₁(S), V₁₂(S), V₃₂(S), V₁₃(S), and V₂₃(S) are the Laplace transform of signals v₁₁(t), v₂₂(t), v₃₃(t), v₂₁(t), v₃₁(t), v₁₂(t), v₃₂(t), v₁₃(t), and v₂₃(t), respectively; K_(c) ²¹>0, K_(c) ³¹>0, K_(c) ¹²>0, K_(c) ³²>0, K_(c) ¹³>0, and K_(c) ²³>0 are the compensator gain; and T_(c) ²¹>0, T_(c) ³¹>0, T_(c) ¹²>0, T_(c) ²²>0, T_(c) ¹³>0, and T_(c) ²³>0 are the compensator time constants. In the applications where only static compensation is considered, the corresponding time constant can be set to 0. If the sub-process G₂₁=0, meaning that there is no interconnection from loop 1 to loop 2, the compensator C₂₁ should be disabled by selecting K_(c) ²¹=0. Similarly, if G₁₂=0, one should select K₁₂=0 to disable C₁₂, and so on.

K_(s) ^(lm) is the compensator sign factor, which is selected based on the acting types of the sub-processes as follows:

K_(s) ^(lm)=1, if G_(ll) and G_(lm) have different acting types   (21a)

K_(s) ^(lm)=−1, if G_(ll) and G_(lm), have the same acting type   (21b)

where l=1, 2, 3; m=1, 2, 3; and l≠m. For instance, K_(s) ¹²=1 if G₁₁ and G₁₂ have different acting types, and K_(s) ¹²=−1 if G₁₁ and G₁₂ have the same acting types.

For control loop 1, the main controller C₁₁ and its corresponding compensators C₁₂ and C₁₃ are in one group. The objective is to control the main process G₁₁, and compensate for the interactions from sub-processes G₁₂ and G₁₃. In this case, the compensation signal V₁₂ and V₁₃ are used to deal with the interaction signals X₁₂ and X₁₃ from sub-processes G₁₂ and G₁₃, respectively. Notice that the interactions are from loop 2 and 3. For control loop 2, the main controller C₂₂ and its corresponding compensators C₂₁ and C₂₃ are in one group. For control loop 3, the main controller C₃₃ and its corresponding compensators C₃₁ and C₃₂ are in one group.

Our design philosophy for multivariable MFA control is not attempting a perfect cancellation for the loop interactions. Therefore, a simplified yet logical design for the estimated compensator time constant is as follows:

$\begin{matrix} {{C_{21}(S)} = {\frac{V_{21}(S)}{V_{11}(S)} = {\frac{K_{s}^{21}K_{c}^{21}}{{T_{c}^{22}S} + 1}.}}} & \left( {22a} \right) \\ {{C_{31}(S)} = {\frac{V_{31}(S)}{V_{11}(S)} = {\frac{K_{s}^{31}K_{c}^{31}}{{T_{c}^{33}S} + 1}.}}} & \left( {22b} \right) \\ {{C_{12}(S)} = {\frac{V_{12}(S)}{V_{22}(S)} = {\frac{K_{s}^{12}K_{c}^{12}}{{T_{c}^{11}S} + 1}.}}} & \left( {22c} \right) \\ {{C_{32}(S)} = {\frac{V_{32}(S)}{V_{22}(S)} = {\frac{K_{s}^{32}K_{c}^{32}}{{T_{c}^{33}S} + 1}.}}} & \left( {22d} \right) \\ {{C_{13}(S)} = {\frac{V_{13}(S)}{V_{33}(S)} = {\frac{K_{s}^{13}K_{c}^{13}}{{T_{c}^{11}S} + 1}.}}} & \left( {22e} \right) \\ {{C_{23}(S)} = {\frac{V_{23}(S)}{V_{33}(S)} = {\frac{K_{s}^{23}K_{c}^{23}}{{T_{c}^{22}S} + 1}.}}} & \left( {22f} \right) \end{matrix}$

In these equations, T_(c) ¹¹>0, T_(c) ²²>0, and T_(c) ³³>0 are the time constants for the main controllers C₁₁, C₂₂, and C₃₃, respectively. They will be entered by the user when configuring the main controllers C₁₁, C₂₂, and C₃₃, This design simplifies controller configuration with less parameter entry requirements of 6 compensator time constants. Since MFA controllers have inherent adaptive capability and a wider robust control range, the 3×3 MFA controller with simplified compensator design can still produce excellent control performance for seriously coupled 3×3 processes.

C. Conventional Boiler-Turbine-Generator (BTG) Units

A conventional coal, oil, or natural gas fired power plant consists of three key components: (1) Boiler, (2) Turbine, and (3) Generator. The Boiler produces superheated steam to turn the Turbine to allow the Generator to generate electricity. Operating as a set, the combined Boiler, Turbine, Generator, and all auxiliaries make up a BTG unit. FIG. 4 is a schematic representation of a Boiler-Turbine-Generator (BTG) unit of a power plant comprising a conventional boiler. Conventional here means that the boiler is sub-critical with a steam drum and also has a fixed bed in comparison to a fluidized-bed boiler.

To produce steam for power generation, water must be boiled. Feedwater first enters the Economizer where initial heating to almost boiling occurs. It then passes into a Steam Drum at the top of the boiler. From there the water recirculates through the Evaporator tubes lining inside the Furnace and back to the Steam Drum. About 20% of the water boils off and leaves the Drum through steam pipes in the top of the Drum. Superheater tubes mounted in the hottest part of the boiler heat the steam one final time.

The superheated steam from the Boiler is fed to the Turbine which is coupled with the Generator. Steam is exhausted from the Turbine at a low pressure, condensed, and then pumped back to the Boiler under pressure. The Turbine has three sections on a common shaft, the high-pressure cylinder (HP), the intermediate-pressure cylinder (IP), and one or more low-pressure cylinders (LP). Steam exhausted from the HP section is taken back to the Reheater to be reheated to its original temperature. In this way, more energy is put into the cycle without requiring further latent heat, thus improving the overall efficiency. From the Reheater, the steam goes to the IP section. Steam exhausted from the IP Section goes directly to the LP section and then passes to the Condenser which is operated at a near vacuum state. Forced draft (FD) fans are used to provide combustion air to the windbox for distribution to the burners. Induced draft (ID) fans are usually equipped to draw flue gases from the Furnace and drive them up the Stack.

The fuel such as coal is burned with a controlled amount of air to insure complete combustion and minimum pollution. Oil and natural gas are readily burned in the furnace; coal must be ground to a fine powder, known as pulverized fuel, before it can be readily burned. A large percent of boilers used for power and steam generation today are conventional subcritical pulverized coal (PC) boilers. Compared with more advanced boilers, they are lower in efficiency, higher in emissions, more fuel sensitive, and have less product versatility.

D. Advanced Power Boilers

Compared with sub-critical fixed bed conventional boilers, there are 3 types of advanced boilers: (1) Once-Through Supercritical (OTSC) Boilers, (2) Circulating Fluidized-Bed (CFB) Boilers, and (3) Once-Through Supercritical Circulating Fluidized-Bed (OTSC CFB) Boilers. Generally speaking, a power plant that is equipped with any number of advanced boilers can be called an advanced power plant.

Boilers used in energy plants are either “drum” or “once-through” types, depending on how the boiler water is circulated. Heat is transferred through the furnace tubes and into the water passing through the tubes to generate steam. In drum-type boilers, the steam-flow rate is typically controlled by the fuel-firing rate. In once-through boilers, the steam-flow rate is established by the boiler feedwater and the superheated steam temperature is controlled by the fuel-firing rate. A boiler is called supercritical when the master steam pressure is over 22.129 Mpa. In general, when water goes over the critical point (Pressure=22.129 Mpa, and Temperature=234 degree C.), it becomes steam. Therefore, a steam drum cannot be used and the Once-through design is the only choice for supercritical boilers. Once-through supercritical boilers run at higher steam temperature and pressure so that better energy efficiency is achieved. But they are difficult to control as summarized in Table 2.

TABLE 2 Challenges Description and Comments Severely The relationship of throttle valve, fuel feed, and water Nonlinear and feed to power, steam pressure, and steam temperature Multivariable are nonlinear and interacting. Serious Because of the once-through design, there exists serious Coupling coupling between the boiler and turbine units. Large Since there is no steam drum, any changes in the throttle Disturbances valve position will cause a direct disturbance to the boiler pressure and temperature. Large load Boiler needs to run in both subcritical and supercritical and operating modes causing large load and operating condition condition changes. changes

Circulating fluidized-bed (CFB) boilers are becoming strategically important in power and energy generation. The unique design of CFB boilers allows fuel such as coal powders to be fluidized in the air so that they have better contact with the surrounding air for better combustion. CFB boilers can burn low-grade materials such as waste coal, wood, and refuse derived fuel. Most importantly, less emissions such as COx and NOx are produced compared to conventional boilers. The critical process variables and their control challenges for a CFB boiler are listed in Table 3.

TABLE 3 Process Variable Control Challenges of CFB Boilers Master Nonlinear, tight specifications, large delay time, large Steam disturbance caused by load changes and poor feed Pressure actuation, etc. Steam Large time delay and time-varying. Temperature Bed Multi-input-single-output process, multiple constraints, Temperature very critical since poor bed temp control results in serious NOx emissions. Excess It is related to multiple emission constraints, varying Oxygen heating value of flexible fuel, and condition of the oxygen sensors. Furnace Multiple fans and dampers to hold proper negative Negative pressure for the furnace. Pressure Coal or Nonlinear, poor actuation, coal or fuel feed jams, etc. Fuel Feed Primary Multiple fans and dampers to hold the proper Air and CFB circulating condition and fuel-air-ratio. Extremely Secondary sensitive to bed temperature. Air

For a CFB boiler, the control challenges are mainly related to the combustion process of its furnace. The combustion process control of a CFB boiler is not in the scope of this patent.

E. Supercritical CFB Boilers and BTG Units

The Once-through Supercritical Circulating Fluidized-bed (OTSC CFB) boiler combines the merits of once-through supercritical and circulating fluidized-bed technologies. As a strategically important clean coal technology, OTSC CFB boilers can significantly improve combustion and energy efficiency, reduce emissions, and have fuel flexibility. It is the most promising boiler for future energy plants because of all its outstanding advantages.

A Supercritical CFB boiler based electric power plant also consists of three key components: (1) Boiler, (2) Turbine, and (3) Generator. Similar to the conventional boiler, the OTSC CFB boiler produces superheated steam to turn the turbine to allow the generator to generate electricity. Operating as a set, the combined Boiler, Turbine, Generator, and all auxiliaries make up a BTG unit. FIG. 5 is a schematic representation of a Boiler-Turbine-Generator (BTG) unit of a power plant comprising a Supercritical Circulating Fluidized-bed boiler. Feedwater first enters the Economizer where initial heating to almost boiling occurs. It then passes into the Cyclone Separator at the top of the Boiler. From there the water recirculates through the Superheaters. The superheated steam is fed directly to the Turbine which is coupled with the Generator. Steam is exhausted from the Turbine at a low pressure, condensed, and then pumped back to the boiler under pressure.

For an OTSC CFB boiler, most of the control challenges in Once-Through Supercritical boilers and in CFB boilers still exist. Since the Supercritical CFB boiler combines the chaotic operating conditions of a CFB boiler and the once-through nature of a supercritical boiler, the control challenges could double. For such a boiler, maintaining a dynamic material and energy balance becomes a big challenge. In general, for an OTSC CFB boiler, its BTG process and its CFB combustion process are much more dependent on a good automatic control system in order to keep the energy and material balance. If not careful, the entire system can get into vicious cycles causing serious consequences. For instance, when a steam demand increases, it will cause the steam pressure to go down, which will quickly affect the boiler firing and then the fluidized-bed conditions. The changed combustion condition will result in more changes in steam temperature and pressure and therefore a vicious cycle will build up causing major operation and safety problems. Conventional control methods including coordinated control of steam turbine and boiler control will have major difficulties in controlling OTSC CFB boilers.

In a power generation network, a BTG unit may be base-loaded to generate at a constant rate, or may cycle up and down as required by an automatic dispatch system. In either case, the boiler control system manipulates the firing rate of the furnace to generate the steam required to satisfy the demand for power. It is also necessary to maintain an adequate supply of feedwater and the correct mixture of fuel and air for safe and economic combustion. These requirements are actually the same for a conventional BTG unit or a BTG unit that employs an advanced power boiler such as a Supercritical boiler, a CFB boiler, or a Supercritical CFB boiler.

FIG. 6 is a diagram illustrating a simplified schematic of the BTG unit along with the key process variables, which are described in Table 4.

TABLE 4 Variable Symbol Description Throttle V_(T) The valve used for the Turbine governor control. Valve Position Firing R_(F) The firing rate of the boiler is changed by Rate manipulating the amounts of air and fuel to the burners. Increasing the firing rate generates more steam. Water F_(W) The feed water flow to the boiler. Feed Power J_(T) The power measurement is used to indicate and Output control the power generation of the BTG unit. Throttle P_(T) The throttle pressure is actually the steam supply Pressure pressure to the turbine. It indicates the state of balance between the supply and demand for steam. Rising throttle pressure indicates that the steam supply exceeds demand and falling throttle pressure indicates that the steam demand exceeds supply. The automatic controller for this purpose is the Turbine Governor. Steam Fs The steam flow. Flow Steam T₁ Temperature of superheated steam in position 1. Temp 1

F. MFA Control System Design Method and MFA Control of BTG Units

In this section, we introduce a novel multivariable control system design method which includes the following key ideas:

-   1. The control system design is based on qualitative analysis of the     process input and output variables. No detailed quantitative     analysis or process models are required. -   2. For a multivariable process, use S (Strong), M (Medium), and W     (Weak) to represent the degree of connections between the input and     output of each sub-process. Use the plus or minus sign to represent     whether the process is direct or reverse acting. -   3. Properly pair the process input and output variables so that the     main processes are open-loop stable and have a strong direct or     reverse acting relationship to assure good controllability. -   4. The remaining sub-processes should have medium, weak, or even no     connections between their input and output variables. Their acting     types do not matter. -   5. If a sub-process has a strong relationship between its input and     output, either improve the process or carefully launch the control     system.

Based on this control system design method, an MFA control system is designed to control the critical process variables of the BTG unit including Power (J_(T)), Steam Throttle Pressure (P_(T)), and Steam Temperature T₁. The process has 3 inputs and 3 outputs and is called a Power-Pressure-Temperature (PPT) process. We pair the variables to form 9 sub-processes G₁₁, G₂₁, . . . , G₃₃ as listed in Table 5.

TABLE 5 Process Outputs - Process Variables to be Controlled Process Inputs - Throttle Pressure Manipulated Variables Power (J_(T)) (P_(T)) Steam Temp (T₁) Firing Rate (R_(F)) G₁₁ G₂₁ G₃₁ Throttle Valve (V_(T)) G₁₂ G₂₂ G₃₂ Water Feed (F_(W)) G₁₃ G₂₃ G₃₃

The importance of the variable pairing is that we want to make sure the 3 main processes G₁₁, G₂₂, and G₃₃ have a strong direct or reverse acting relationship so that they have good controllability. The detailed qualitative input and output relationship among all 9 sub-processes is analyzed and presented in Table 6.

TABLE 6 Input- Acting Process Output Type Qualitative Input and Output Relationship G₁₁ R_(F)-J_(T) S Strong direct acting. When the firing rate increases, the power will increase but the relationship is quite nonlinear. G₂₁ R_(F)-P_(T) M to S When the firing rate increases, the throttle pressure will increase gradually. G₃₁ R_(F)-T₁ M to S When the firing rate increases, the steam temperature will increase gradually. G₁₂ V_(T)-J_(T) +/− S When the throttle valve increases, the power will increase immediately for a short period of time. If the firing rate does not change, power will go down and back to its original position. G₂₂ V_(T)-P_(T) −S Strong reverse acting. When the throttle valve position increases, the throttle pressure decreases. G₃₂ V_(T)-T₁ W When the throttle valve increases, it has little effect on the temperature. G₁₃ F_(W)-J_(T) +/−M When the water feed increases, the power will increase for a short period of time and then decrease quite significantly. G₂₃ F_(W)-P_(T) +/−M When the water feed increases, the throttle pressure will increase immediately and then decrease gradually. G₃₃ F_(W)-T₁ −S Strong reverse acting. When the water feed increases, it will cause the steam temperature to decrease.

Based on the variable pairing and control system design, the 3×3 MFA controller illustrated in FIG. 3 can be readily applied to control the PPT process of a BTG unit. The BTG unit may include a conventional power boiler or an advanced power boiler such as a Supercritical boiler, a CFB boiler, or a Supercritical CFB boiler.

FIG. 7 illustrates the block diagram of a 3×3 MFA control system for controlling the 3×3 Power-Pressure-Temperature (PPT) process of a Boiler-Turbine-Generator (BTG) unit according to this invention. The MFA control system comprises a 3×3 MFA controller 62, a 3×3 PPT process of a BTG unit 64, a Firing Rate and Combustion Sub-system 66, a Throttle Valve and Steam Flow Sub-system 68, and a Water Flow Sub-system 70. Each of the sub-systems may include various control loops. For instance, the Water Flow Sub-system typically includes a water flow control loop. In this case, the control signal u3 will be used as the setpoint for the water flow control loop, which is the inner loop of the cascade control system. Conventional control methods could be used to control these sub-systems. Therefore, they are not in the scope of this patent.

The 3×3 PPT process has nine sub-processes G₁₁ through G₃₃ as listed in Table 6. The process variables y₁, y₂, and y₃ are Power (J_(T)), Steam Throttle Pressure (P_(T)), and Steam Temperature T₁, respectively. They are the feedback signals for each of the main control loops and compared with the setpoints r₁, r₂ and r₃ at adders 72 to produce error signals e₁, e₂, and e₃. The outputs of the 3×3 MFA controller u₁, u₂, and u₃ manipulate the manipulated variables Firing Rate (R_(F)), Throttle Valve (V_(T)), and Water Feed (F_(W)) to control the Power (J_(T)), Steam Throttle Pressure (P_(T)), and Steam Temperature T₁, respectively.

FIG. 8 is a time-amplitude diagram comparing the control performance of a 3×3 MFA control system versus a PID control system for controlling two identical PPT processes of a BTG unit, where the setpoint for Power is stepped down. In FIG. 8, curves 74, 75, 76 are SP, PV, OP of the MFA Power loop, and curves 77, 78, 79 are SP, PV, OP of the PID Power loop, respectively. Curves 80, 81, 82 are SP, PV, OP of the MFA Pressure loop, and curves 83, 84, 85 are SP, PV, OP of the PID Pressure loop, respectively. Curves 86, 87, 88 are SP, PV, OP of the MFA Temperature loop, and curves 89, 90, 91 are SP, PV, OP of the PID Temperature loop, respectively. The loop interactions can be clearly seen. When the Power SP (Signals 74 and 77) is changed from 60 to 35, the controller OP (Signals 76 and 79) produces the control actions trying to force the Power PV (Signals 75 and 78) to track its setpoint. Since it is a 3×3 process, this action inevitably causes the Pressure PV and Temperature PV to change as well.

FIG. 9 is a time-amplitude diagram comparing the control performance of a 3×3 MFA control system versus a PID control system for controlling two identical PPT processes of a BTG unit, where the setpoint for Steam Throttle Pressure is stepped down. In FIG. 9, curves 92, 93, 94 are SP, PV, OP of the MFA Power loop, and curves 95, 96, 97 are SP, PV, OP of the PID Power loop, respectively. Curves 98, 99, 100 are SP, PV, OP of the MFA Pressure loop, and curves 101, 102, 103 are SP, PV, OP of the PID Pressure loop, respectively. Curves 104, 105, 106 are SP, PV, OP of the MFA Temperature loop, and curves 107, 108, 109 are SP, PV, OP of the PID Temperature loop, respectively. Please notice that the throttle valve change has little effect on the temperature loop as described for sub-process G₃₂ in Table 6.

FIG. 10 is a time-amplitude diagram comparing the control performance of a 3×3 MFA control system versus a PID control system for controlling two identical PPT processes of a BTG unit, where the setpoint for Steam Temperature is stepped down. In FIG. 10, curves 110, 111, 112 are SP, PV, OP of the MFA Power loop, and curves 113, 114, 115 are SP, PV, OP of the PID Power loop, respectively. Curves 116, 117, 118 are SP, PV, OP of the MFA Pressure loop, and curves 119, 120, 121 are SP, PV, OP of the PID Pressure loop, respectively. Curves 122, 123, 124 are SP, PV, OP of the MFA Temperature loop, and curves 125, 126, 127 are SP, PV, OP of the PID Temperature loop, respectively. As illustrated, the MFA control system can suppress the disturbances in the Power and Pressure loops caused by the big change in the water flow. In contrast, the same disturbance caused the PID loops to swing.

FIG. 11 is a time-amplitude diagram comparing the control performance of a 3×3 MFA control system versus a PID control system for controlling two identical PPT processes of a BTG unit, where the setpoints for Power, Throttle Pressure, and Steam Temperature all have step changes. In FIG. 11, curves 128, 129, 130 are SP, PV, OP of the MFA Power loop, and curves 131, 132, 133 are SP, PV, OP of the PID Power loop, respectively. Curves 134, 135, 136 are SP, PV, OP of the MFA Pressure loop, and curves 137, 138, 139 are SP, PV, OP of the PID Pressure loop, respectively. Curves 140, 141, 142 are SP, PV, OP of the MFA Temperature loop, and curves 143, 144, 145 are SP, PV, OP of the PID Temperature loop, respectively. In this case, the Power SP (Signals 128 and 131) is firstly stepped down from 58 to 34, the Pressure SP (Signals 134 and 137) is then stepped up from 40 to 62, and the Temperature SP (Signals 140 and 143) is lastly stepped up from 24 to 42. It can be seen that each setpoint change causes disturbances to all control loops. The 3×3 MFA control system is able to deal with the disturbances and keeps the Power, Pressure, and Temperature under control. In contrast, the PID control system cannot effectively control the 3×3 process resulting in oscillations in all 3 loops.

To summarize, the control trends demonstrate outstanding control performance of the 3×3 MFA control system for both tracking and regulating capabilities. The compensators inside the 3×3 MFA controller can effectively decouple and reduce the interactions from the other loops of the 3×3 PPT process. The control trends also demonstrate un-satisfactory control performance of the PID control system. Since PID controllers are single-loop controllers and can only treat the 3-Input-3-Output (3×3) multivariable process as three single-input-single-output (SISO) processes, it is very difficult for the PID control system to be effective and achieve good control performance. When there is a setpoint change or disturbance in the process, it will take a long time for the loops to settle down due to interactions among the loops. For instance, when the setpoint of Loop 1 is changed, the PID control action in Loop 1 will disturb Loop 2 and 3 causing their PID controllers to produce control actions, which will come back to disturb Loop 1. The multiple and bi-directional interactions can cause conflicting control actions and trigger a vicious cycle resulting in loop oscillations. Therefore, when applying PID for multivariable control, most PID controllers are significantly de-tuned to avoid potential oscillations or even unstable control. In the real world, a large percentage of multi-input-multi-output (MIMO) processes are treated as single-input-single-output (SISO) processes resulting in poor control performance, inconsistent quality, wasted materials and energy, and plant safety problems. The 3×3 MFA control system described in this patent can be very useful for controlling key process variables of boiler-turbine-generator (BTG) units in conventional and advanced power plants as well as other multivariable processes. 

1. A 3-Input-3-Output (3×3) Model-Free Adaptive (MFA) control system, comprising: a) a 3-Input-3-Output (3×3) process to be controlled, further comprising: i) three main-processes G₁₁, G₂₂, G₃₃ having their corresponding process outputs x₁₁(t), x₂₂(t), x(t)₃₃, responsive to their corresponding control signals u₁(t), u₂(t), x₃(t), respectively; and ii) six sub-processes G₂₁, G₃₁, G₁₂, G₃₂, G₁₃, G₂₃ having their corresponding process outputs x₂₁(t), x₃₁(t), x₁₂(t), x₃₂(t), x₁₃(t), x₂₃(t); wherein the process produces three measured process variables y₁(t), y₂(t), y₃(t) for the corresponding main-processes, each of the process variables being affected by the output of its corresponding main-process, the outputs of two corresponding sub-processes and disturbance signals as follows: y ₁(t)=x ₁₁(t)+x ₁₂(t)+x ₁₃(t)+d ₁(t), y ₂(t)=x ₂₁(t)+x ₂₂(t)+x ₂₃(t)+d ₂(t), y ₃(t)=x ₃₁(t)+x ₃₂(t)+x ₃₃(t)+d ₃(t); wherein d₁(t), d₂(t) and d₃(t) are disturbance signals; and b) a 3-Input-3-Output (3×3) Model-Free Adaptive (MFA) controller, further comprising: i) three main-controllers C₁₁, C₂₂, C₃₃ responsive to error signals e₁(t), e₂(t) and e₃(t) respectively and having their corresponding control outputs v₁₁(t), v₂₂(t), v₃₃(t); and ii) six compensators C₂₁, C₃₁, C₁₂ C₃₂, C₁₃, C₂₃ having their corresponding outputs v₂₁(t), v₃₁(t) v₁₂(t), v₃₂(t) v₁₃(t), v₂₃(t); wherein: iii) the error signals e₁(t), e₂(t), e₃(t) are iteratively calculated as follows: e ₁(t)=r ₁(t)−y ₁(t), if G ₁₁ is direct acting e ₁(t)=[r ₁(t)−y ₁(t)], if G ₁₁ is reverse acting e ₂(t)=r ₂(t)−y ₂(t), if G ₂₂ is direct acting e ₂(t)=−[r ₂(t)]y ₂(t), if G ₂₂ is reverse acting e ₃(t)=r ₃(t)−y ₃(t), if G ₃₃ is direct acting e ₃(t)=−[r ₃(t)]y ₃(t), if G ₃₃ is reverse acting where a process is direct acting if the process output increases as the process input increases, and a process is reverse acting if the process output decreases as the process input increases, and r₁(t), r₂(t) and r₃(t) are setpoints; iv) each of the compensators uses a control output from a corresponding main-controller as its input; and v) each of the main-controllers has a combined control output being iteratively calculated based on its corresponding control output and the outputs from two corresponding compensators as follows: u ₁(t)=v ₁₁(t)+v ₁₂(t)+v ₁₃(t), u ₂(t)=v ₂₁(t)+v ₂₂(t)+v ₂₃(t), u ₃(t)=v ₃₁(t)+v ₃₂(t)+v ₃₃(t), wherein, the combined control output of each main-controller is the input to its corresponding main-process and two sub-processes in order to control the measured process variable of its corresponding main-process.
 2. The control system of claim 1, wherein: a) the three main-controllers C₁₁, C₂₂, and C₃₃, each have a corresponding normalized error value E₁ ¹¹(n), E₁ ²²(n), and E₁ ³³(n) being computed with a normalization function N(.) as follows: ${{E_{1}^{11}(n)} = {\frac{K_{c}^{11}}{T_{c}^{11}}{N\left( {e_{1}(t)} \right)}}},{{E_{1}^{22}(n)} = {\frac{K_{c}^{22}}{T_{c}^{22}}{N\left( {e_{2}(t)} \right)}}},{{E_{1}^{33}(n)} = {\frac{K_{c}^{33}}{T_{c}^{33}}{N\left( {e_{3}(t)} \right)}}},$ in which, n denotes the nth iteration; e₁(t), e₂(t), and e₃(t) are the error signals as the controller inputs, K_(c) ¹¹>0, K_(c) ²²>0, and K_(c) ³³>0 are the controller gains, and T_(c) ¹¹>0, T_(c) ²²>0, and T_(c) ³³>0 are the time constants for C₁₁, C₂₂, and C_(33,) respectively; b) the main-controller C₁₁, C₂₂, and C₃₃ each includes a neural network with an input layer including a plurality of input neurons arranged to receive normalized, scaled and delayed forms of said error signal, a hidden layer including a plurality of hidden neurons each arranged to sum the signals received by each of said input neurons weighted by an individual first weighting factor, and an output neuron which sums the individually weighted outputs of hidden neurons, the weighting factors for said hidden neuron outputs being iteratively adjusted, and an activation function f(x) substantially of the form $\begin{matrix} {{{f(x)} = 0},{{{if}\mspace{14mu} x} < {- \frac{b}{a}}}} \\ {{{f(x)} = {{ax} + b}},{{{if}\mspace{14mu} - \frac{b}{a}} \leq x \leq \frac{b}{a}}} \\ {{{f(x)} = 1},{{{if}\mspace{14mu} x} > \frac{b}{a}}} \end{matrix}$ where a is an arbitrary constant and b=1/2; c) the main-controllers are arranged to produce their control outputs v₁₁(t), v₂₂(t), v₃₃(t) substantially based on the following difference equations and the online learning algorithms of the neural network: For Controller C₁₁: $\begin{matrix} {{{p_{j}^{11}(n)} = {\sum\limits_{i = 1}^{N}{{w_{ij}^{11}(n)}{E_{i}^{11}(n)}}}},} \\ {{{q_{j}^{11}(n)} = {{{ap}_{j}^{11}(n)} + b}},} \\ {{{v_{11}(n)} = {{K_{c}^{11}{e_{1}(n)}} + {100\left\lbrack {{a{\sum\limits_{j = 1}^{N}{{h_{j}^{11}(n)}{q_{j}^{11}(n)}}}} + b} \right\rbrack}}},} \\ {{{\Delta \; {w_{ij}^{11}(n)}} = {a^{2}\eta^{11}{e_{1}(n)}{E_{i}^{11}(n)}{h_{j}^{11}(n)}}},} \\ {{{\Delta \; {h_{j}^{11}(n)}} = {a\; \eta^{11}{e_{1}(n)}{q_{j}^{11}(n)}}};} \end{matrix}$ For Controller C₂₂ $\begin{matrix} {{{p_{j}^{22}(n)} = {\sum\limits_{i = 1}^{N}{{w_{ij}^{22}(n)}{E_{i}^{22}(n)}}}},} \\ {{{q_{j}^{22}(n)} = {{{ap}_{j}^{22}(n)} + b}},} \\ {{{v_{22}(n)} = {{K_{c}^{22}{e_{2}(n)}} + {100\left\lbrack {{a{\sum\limits_{j = 1}^{N}{{h_{j}^{22}(n)}{q_{j}^{22}(n)}}}} + b} \right\rbrack}}},} \\ {{{\Delta \; {w_{ij}^{22}(n)}} = {a^{2}\eta^{22}{e_{2}(n)}{E_{i}^{22}(n)}{h_{j}^{22}(n)}}},} \\ {{{\Delta \; {h_{j}^{22}(n)}} = {a\; \eta^{22}{e_{2}(n)}{q_{j}^{22}(n)}}};} \end{matrix}$ For Controller C₃₃ $\begin{matrix} {{{p_{j}^{33}(n)} = {\sum\limits_{i = 1}^{N}{{w_{ij}^{33}(n)}{E_{i}^{33}(n)}}}},} \\ {{{q_{j}^{33}(n)} = {{{ap}_{j}^{33}(n)} + b}},} \\ {{{v_{33}(n)} = {{K_{c}^{33}{e_{2}(n)}} + {100\left\lbrack {{a{\sum\limits_{j = 1}^{N}{{h_{j}^{33}(n)}{q_{j}^{33}(n)}}}} + b} \right\rbrack}}},} \\ {{{\Delta \; {w_{ij}^{33}(n)}} = {a^{2}\eta^{33}{e_{2}(n)}{E_{i}^{33}(n)}{h_{j}^{33}(n)}}},} \\ {{{\Delta \; {h_{j}^{33}(n)}} = {a\; \eta^{33}{e_{2}(n)}{q_{j}^{33}(n)}}};} \end{matrix}$ in which, n denotes the nth iteration; a is an arbitrary constant and b=½ which are bounded by the activation function f(x); η¹¹>0, η²²>0, and η³³>0 are the learning rates for C₁₁, C₂₂, and C₃₃, respectively; K_(c) ¹¹>0, K_(c) ²²>0, and K_(c) ³³>0 are the controller gains for C₁₁, C₂₂, and C₃₃, respectively; and E_(i) ¹¹(n), E_(i) ²²(n), E_(i) ³³(n) are the delayed signals of E₁ ¹¹(n), E₁ ²²(n), and E₁ ³³(n), respectively; and d) the compensators have their corresponding outputs C₂₁(S), C₃₁(S), C₁₂(S), C₃₂(S), C₁₃(S), C₂₃(S) substantially in the form of the following Laplace transfer functions: $\begin{matrix} {{C_{21}(S)} = {\frac{V_{21}(S)}{V_{11}(S)} = {\frac{K_{s}^{21}K_{c}^{21}}{{T_{c}^{21}S} + 1}.}}} \\ {{C_{31}(S)} = {\frac{V_{31}(S)}{V_{11}(S)} = {\frac{K_{s}^{31}K_{c}^{31}}{{T_{c}^{31}S} + 1}.}}} \\ {{C_{12}(S)} = {\frac{V_{12}(S)}{V_{22}(S)} = {\frac{K_{s}^{12}K_{c}^{12}}{{T_{c}^{12}S} + 1}.}}} \\ {{C_{32}(S)} = {\frac{V_{32}(S)}{V_{22}(S)} = {\frac{K_{s}^{32}K_{c}^{32}}{{T_{c}^{32}S} + 1}.}}} \\ {{C_{13}(S)} = {\frac{V_{13}(S)}{V_{33}(S)} = {\frac{K_{s}^{13}K_{c}^{13}}{{T_{c}^{13}S} + 1}.}}} \\ {{C_{23}(S)} = {\frac{V_{23}(S)}{V_{33}(S)} = {\frac{K_{s}^{23}K_{c}^{23}}{{T_{c}^{23}S} + 1}.}}} \end{matrix}$ in which, S is the Laplace transform operator; V₁₁(S), V₂₂(S), V₃₃(S), V₂₁(S), V₃₁(S), V₁₂(S), V₃₂(S), V₁₃(S), and V₂₃(S) are the Laplace transform of signals v₁₁(t), v₂₂(t), v₃₃(t), v₂₁(t), v₃₁(t), v₁₂(t), v₃₂(t), v₁₃(t), and v₂₃(t), respectively; K_(c) ²¹>0, K_(c) ³¹>0, K_(c) ¹²>0, K_(c) ³²>0, K_(c) ¹³>0, and K_(c) ²³>0 are the compensator gains; K_(s) ²¹, K_(s) ³¹, K_(s) ¹², K_(s) ³², K_(s) ¹³, K_(s) ²³ are the compensator sign factors, and T_(c) ²¹>0, T_(c) ³¹>0, T_(c) ¹²>0, T_(c) ³²>0, T_(c) ¹³>0, and T_(c) ²³>0 are the compensator time constants.
 3. The control system of claim 2, in which the compensators have said compensator sign factors being selected based on the acting types of the main-processes G_(ll) and sub-processes G_(lm) as follows: K_(s) ^(lm)=1, if G_(ll) and G_(lm) have different acting types K_(s) ^(lm)=−1 if G_(ll) and G_(lm), have the same acting type where l=1, 2, 3; m=1, 2, 3; and l≠m.
 4. The control system of claim 1, in which the 3-Input-3-Output (3×3) process is a Power-Pressure-Temperature (PPT) process of a Boiler-Turbine-Generator (BTG) unit of an electrical power or energy generation plant, in which the 3×3 process has the following main-processes and sub-processes: for G₁₁, the input is Firing Rate and output is Power, for G₂₂, the input is Throttle Valve Position and output is Steam Throttle Pressure, for G₃₃, the input is Water Feed and output is Master Steam Temperature, for G₂₁, the input is Firing Rate and output is Steam Throttle Pressure, for G₃₁, the input is Firing Rate and output is Master Steam Temperature, for G₁₂, the input is Throttle Valve Position and output is Power, for G₃₂, the input is Throttle Valve Position and output is Master Steam Temperature, for G₁₃, the input is Water Feed and output is Power, for G₂₃, the input is Water Feed and output is Steam Throttle Pressure.
 5. The control system of claim 4, in which the 3-Input-3-Output (3×3) process is a Power-Pressure-Temperature (PPT) process of a Boiler-Turbine-Generator (BTG) unit of a conventional coal-fired power boiler, or a Once-Through Supercritical (OTSC) Boiler, or a Circulating Fluidized-Bed (CFB) Boiler, or a Once-Through Supercritical Circulating Fluidized-Bed (OTSC CFB) Boiler.
 6. A method of controlling a 3-Input-3-Output (3×3) process having three main-processes and six sub-processes, each of said main-processes having an input, and an output responsive to the said input, each of said sub-processes having an input and an output, each of said main-processes having a measured process variable, which is the summation of the output of the main-process and outputs from two corresponding sub-processes; the 3-Input-3-Output (3×3) process having unknown relationships between their inputs and outputs, without approximating or modeling said relationships, comprising: a) selecting a setpoint representing a desired value for the measured process variable for each of the main-processes; b) obtaining an error value which is a function of the difference between said setpoint and said measured process variable for each of the main-processes; c) for each of the main-processes, applying said error value as the sole input to a dynamic block whose inputs are time-delayed functions of said error value, and whose output is a control value which varies the input of its corresponding main-process and two sub-processes; and d) continuously iteratively varying the parameters of said dynamic block to help minimize said error value for each of the main-processes.
 7. The method of claim 6, further comprising adding said error value to the control value for each of the main-processes.
 8. The method of claim 6, for each of the main-processes, further comprising adding the error value to said control value, in which the error value can be increased or decreased by a manually adjustable gain parameter.
 9. The method of claim 6, wherein the 3-Input-3-Output (3×3) process is a Power-Pressure-Temperature (PPT) process of a Boiler-Turbine-Generator (BTG) unit of a conventional coal-fired power boiler, or a Once-Through Supercritical (OTSC) Boiler, or a Circulating Fluidized-Bed (CFB) Boiler, or a Once-Through Supercritical Circulating Fluidized-Bed (OTSC CFB) Boiler. 